<?php

require_once("lib/exception/duplicate_instance_exception.php");
require_once("lib/exception/internal_error_exception.php");
require_once("lib/exception/instance_not_found_exception.php");

abstract class Article_dao {
	
	public function create($article_to) {
		throw Duplicate_instance_exception;
		throw Internal_error_Exception;
	}
		
	public function exist($number) {
		throw Internal_error_Exception;
	}
	
	public function find_by_number_article($number) {
		throw Internal_error_Exception;
		throw Instance_not_found_exception;
	}

	public function find_by_keywords_title_and($keywords, $start_index, $count) {
		throw Internal_error_Exception;
		throw Instance_not_found_exception;
	}
	
	public function find_by_keywords_title_or($keywords, $start_index, $count) {
		throw Internal_error_Exception;
		throw Instance_not_found_exception;
	}
	
	public function find_by_keywords_title_description_and($keywords, $start_index, $count) {
		throw Internal_error_Exception;
		throw Instance_not_found_exception;
	}
	
	public function find_by_keywords_title_description_or($keywords, $start_index, $count) {
		throw Internal_error_Exception;
		throw Instance_not_found_exception;
	}
	
	public function find_by_keywords_title_category_and($keywords, $start_index, $count) {
		throw Internal_error_Exception;
		throw Instance_not_found_exception;
	}
	
	public function find_by_keywords_title_category_or($keywords, $start_index, $count) {
		throw Internal_error_Exception;
		throw Instance_not_found_exception;
	}
	
	public function find_by_keywords_title_description_category_and($keywords, $start_index, $count) {
		throw Internal_error_Exception;
		throw Instance_not_found_exception;
	}
	
	public function find_by_keywords_title_description_category_or($keywords, $start_index, $count) {
		throw Internal_error_Exception;
		throw Instance_not_found_exception;
	}
		
	public function find_most_recent($start_index, $count) {
		throw Internal_error_Exception;
		throw Instance_not_found_exception;
	}
	
	public function find_most_viewed($start_index, $count) {
		throw Internal_error_Exception;
		throw Instance_not_found_exception;
	}
	
	public function count_articles_by_login($login) {
		throw Internal_error_Exception;
		throw Instance_not_found_exception;
	}
		    
	public function update($article_to) {
		throw Internal_error_Exception;
		throw Instance_not_found_exception;
	}
    
	public function remove($number) {
		throw Internal_error_Exception;
		throw Instance_not_found_exception;
	}
	      
}

?>